package com.sheyu.mall.search.thread;

import java.util.concurrent.BlockingQueue;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;

/**
 * @author sheyu
 * @date 2020/8/18 10:43 下午
 */

public class ThreadTest {
    public static void main(String[] args) {
        /**
         * 4) 线程池（Ex）
         */

        TimeUnit unit;
        BlockingQueue workQueue;
        /**
         * 七大参数
         * corePoolSize：核心线程数【一直存在除非【allowCoreThreadTimeOut】】；线程池，创建好以后就准备就绪的线程数量，就等待来接受异步任务去执行
         *
         * maximumPoolSize最大线程数，控制资源
         * keepAliveTime:存活时间，如果当前的线程数量大于core数量，释放空闲的线程（maximumPoolSize）只要线程空闲大于指定的keepAliveTime
         * threadFactory:线程的创建工厂
         * RejectedExecutionHandler handler：如果队列满了，按照指定的拒绝策略拒绝执行任务
         *
         *
         * 工作顺序：
         * 1）、线程池创建，准备好core数量的核心线程，准备接受任务
         * 1、1、core满了，
         */
        ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(, , , unit, workQueue);
    }
}
